package com.qk.management.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.qk.common.PageResult;
import com.qk.domain.business.BusinessDO;
import com.qk.dto.business.BusinessAddDTO;
import com.qk.dto.business.BusinessListDTO;
import com.qk.dto.business.BusinessPoolListDTO;
import com.qk.dto.business.UpdateBusinessInfoDTO;
import com.qk.entity.Business;
import com.qk.vo.business.BusinessVO;

/**
 * 商机Service层接口
 * @Author:Mr.m
 * @Date: 2025-10-15 11:02
 * @Description:
 */
public interface BusinessService extends IService<Business> {

    /**
     * 商机公海列表
     *
     * @param dto 商机信息
     * @return 商机列表
     */
    PageResult<Business> businessPool(BusinessPoolListDTO dto);

    /**
     * 跟进商机信息
     *
     * @param dto 商机信息
     */
    void updateBusinessInfoById(UpdateBusinessInfoDTO dto);

    /**
     * 获取商机信息
     *
     * @param id 商机id
     * @return 商机信息
     */
    BusinessVO getBusinessInfoById(Integer id);

    /**
     * 转用户
     *
     * @param id 商机id
     * @return 修改结果
     */
    void toCustomer(Integer id);

    /**
     * 商机列表
     *
     * @param dto 商机信息
     * @return 商机列表
     */
    PageResult<BusinessDO> businessList(BusinessListDTO dto);

    /**
     * 新增商机
     *
     * @param dto 商机信息
     */
    void addBusiness(BusinessAddDTO dto);

}
